Blockchain-based trustless date verifiable video capture

ABSTRACT

A host system may initiate a multiple node exchange of selected values to generate a random selection. The structure of the exchange may allow later verification that no single node had control of the generation of the random selection. Accordingly, the random selection may be unknown prior to the exchange. The host system may then provide the random selection to the device for integration of the random selection during the capture of video. The video may be recorded to a blockchain. Because of the integration with the random selection, the video may be date verifiable, such that the video can be verified to be created after the random selection and before recordation to the blockchain.

PRIORITY CLAIM

This application claims priority to U.S. Provisional Application Ser.No. 62/667,545, filed May 6, 2018, and titled Blockchain-Based TrustlessDate Verifiable Video Capture, which is incorporated by reference in itsentirety.

TECHNICAL FIELD

This disclosure relates to date verifiable file creation.

BACKGROUND

Rapid advances in electronics and communication technologies, driven byimmense customer demand, have resulted in the widespread adoption ofelectronic transactions, record keeping, and data sharing. As oneexample, e-currencies, such as Bitcoin, have displaced paper currenciesin millions of transactions per year. Improvements in tracking and/orknowledge management attached to such electronic transactions willcontinue to increase the features and options available to operatorsengaging in electronic transactions and electronic record keeping.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows and example date verifiable file creation environment.

FIG. 2 shows example dating logic.

FIG. 3 shows an example mobile device.

FIG. 4 shows an example execution environment 400 for a host system.

Landlords and tenants do not generally involve trusted-parties until adispute arises. This adds complexity and expense to achieving resolutionbecause trusted parties must often rely on the evidence provided by andthe recollections of the distrusted parties to establishing the factualbasis for resolution of their dispute.

Herein, distributed networks and cryptographic structures/primitives(“crypto”), including blockchain and other distributed ledgertechnologies, provide a technical solution for supplanting sociallycreated trust constructs. Accordingly, distributed networks and cryptotransform a historically social problem with social solutions into apurely technical problem with technical solutions. Further, becausetechnical solutions eschew the need for third-party involvement,untrusted parties may collect trustable evidence cheaply enough justifyits collection without an active or imminent dispute. Therefore,distributed networks and crypto can provide an underpinning for businessand legal models that rely on pre-dispute fact gathering by untrustedparties. Using the architectures and techniques discussed below, cryptomay provide date verifiability to media files, data where a randomnumber may be integrated into the creation of the data, and data whererandom selection of the data from multiple options may be used tocertify its selection at a time after generation of a random value. Forthe architectures and techniques discussed various blockchain and otherdistributed ledger technologies may provide suitable recordationfeatures (e.g., functional immutability, time stamping or other timekeeping features, or other features). For convenience, these variousblockchain and other distributed ledger technologies will be referred tocollectively as “blockchain.”

The video capture techniques and architectures are discussed within thelandlord-tenant property self-inspection context. However, thesedate-verifiable video capture techniques and architectures haveapplication in other areas of law and industrial settings. For example,in regulatory inspection regimes, such as, EPA, USDA, and FDA siteinspections, the schedule for on-site inspections is notoriouslyinsufficient. Earliest-date-verifiable video capture paired withlatest-date-verifiable blockchain recordation would provide thepotential to supplement these sparse regulatory inspection schedules.

The video capture (VC) app captures the video in a manner that allowsfor independent verification that the video was not captured earlierthan claimed. Further, the VC app provides of record of the video forblockchain storage thus allowing for independent verification that thevideo was not captured later than claimed. Accordingly, the host systemcan review video for signs of damage or disrepair within the propertywhile confident that the video reflects the current condition of theproperty.

Further, the data verifiability techniques may be applied in contextsother than video capture, including audio capture, cryptographicchallenge/key selection (e.g., for provable storage, financialexchanges, time-lock creation, or other cryptographic technique).

Earliest-Date-Verifiable Video Capture

The technique of earliest-date-verifiable (EDV) video capture includesdate-verifiable random selection and integration of the random selectioninto the captured video. Date-verifiable random selection is acryptographic technique for selecting a random value for which therandom selection can be verified to have occurred at a specific date andtime. Accordingly, integration of the random value into serves as proofthat the video was created after the random selection.

Date-Verifiable Random Selection

Underlying the date-verifiability of the random selection is the use ofa distributed network in the selection of the date-verifiable randomvalue. Multiple nodes of the in the network select values. Those valuesare then combined in one of variety algorithms to produce a randomlyselected value which is provably not under control of any one of thenodes. Accordingly, less than 100% of the nodes are surreptitiouslycoordinating, none of the individual nodes or any subgroup of the nodeswould have foreknowledge of the final random value. Accordingly, anyaction (e.g., including file creation, video capture, data/challengeselection from a selected number of predetermined options, or otheractions) that provable relies on that random value may be established asoccurring after selection of the random value.

Table 1 shows one such date-verifiable random selection construction:

TABLE 1 Date-verifiable random selection construction 1. Each node x inthe group selects a secret value s_(x) secret value and then revealsH(s_(x)), where H is a collision-resistant hash function, verifiablerandom function, or other function with both irreversibility andcollision- resistance. H may be selected to produce values of a bitlength. 2. Once all H(s_(x)) have been revealed, each node revealss_(x). 3. The values s_(x) are concatenated (or otherwise combined) andthen fed into H to produce Y. A first record of Y, the values s_(x), andidentifiers for the node participants is appended to a blockchain forlater date verification. 4. Each node then selects a new secret valuet_(x) and reveals H(Y ∥ t_(x)), where ∥ denotes concatenation. 5. Onceall H(Y ∥ t_(x)) have been revealed, each node reveals t_(x). 6. Thevalues t_(x) are concatenated along with Y and then fed into H toproduce Z, which is the selected random value. A second record of Z andthe values t_(x), may be appended to the blockchain and may refer to thefirst record.

Other distributed-network based random selection schemes may be adaptedto this purpose. The distributed-network based random selection schemesmay be constructed such that the participating nodes commit to aselection while having less than full knowledge of the other selections.This may prevent a malicious node from selecting a value that willproduce a result known to that node either before the selection processbegan or before the final value is learned by the other nodes (e.g., ahead start). This may be achieved in one or more selection rounds. Insome cases, more rounds may increase the difficulty of influencing thefinal random selection. Conversely, increased rounds may increase theresources consumed during generation of the random selection and reduceefficiency. However, the above algorithm in Table 1 establishes thatdate-verifiable random selection is achievable.

Random Variable Integration in Video Capture

Once a date-verifiable random value is selected, the date-verifiablerandom value is provided to the tenant for use in video capture. Bycreating and/or causing audio and visual signals during video capture,the selected random value is integrated into the self-inspection video.For example, in a mobile device based system, the VC app (e.g., providedby the host system) may cause the flash of the mobile device to turn onan off during filming to represent the random variable. An example,camera-flash-based implementation is discussed briefly below. Otherimplementations may include displaying words or strings of numbers forthe operator of the mobile device to read aloud while filming. Thesystem may also integrate a one or more watermarks into the video, forexample a sequence of watermarks that represents the random selection.Virtually, any series of audio or visual signals may be used torepresent the random value, for example, a series of flash cardsdisplayed by the operator during filming, a programmable ornetwork-connect semaphore/strobe, a specific order in which particularsites within the property are presented in the video, or otheraudio/visual sequence generator. Further, the representations may bemixed, for example a first group of bits from the random valueselections may define the order in which sites (e.g., with pre-definedidentifiers) are visited within the self-inspection video while a secondgroup of bits defines a set of words to be vocalized by the operator (oranother person present) during capture.

In an example flash-based system, the mobile device may use pairs ofshort flashes at defined relative intervals. For example, a host systemmay send the mobile device a series of time intervals based on the dateverifiable random value selection. During filming, the mobile device maygenerate one pair of flashes every 10 seconds (or other pre-definedperiod). The time duration between the each pair of flashes may match upwith the intervals in the series. For 30 fps video, an intervalprecision of 0.1 seconds may be used to avoid data loss due to samplingissues. Other flash sequences or larger tuples of flashes (e.g.,triplets or quadruplets instead of pairs) may be used to represent therandom value.

The result of the integration of the random variable is a video thatrecords the self-inspection of the property that could not have beencreated before the random variable is selected. In other words, an EDVvideo.

Blockchain Recordation

Once the EDV video is created, the mobile app may send the EDV video tothe host system and the host system may record the EDV to a blockchain.The record of the EDV video on the blockchain creates a latest date atwhich the EDV video could have been created. When blockchain recordationis paired with EDV capture, it is later verifiable that theself-inspection video occurred within the time window between theselection of the random value and the recordation of the self-inspectionvideo on the blockchain.

In some implementations, the system may enforce an expiry date on randomvalue selections. Expiry dates may add additional protection against theproduction of fraudulent self-inspection videos using deceptivepost-capture editing or computer-generated effects.

For privacy and storage efficiency, the captured video may be recordedto the blockchain in a hashed, provable retrievability, or other cryptoform. The host system and/or the tenant may then store theself-inspection video using locally-controlled storage. Then, using theblockchain record, the host/tenant could prove that the version of thevideo they have stored is the originally recorded self-inspection video.

Referring now to FIGS. 1 and 2, FIG. 1 shows and example date verifiablefile creation environment 100, and FIG. 2 shows example dating logic 200(e.g., which may be executed on dating circuity on the host system 101)that may be used for date verifiable file creation within theenvironment 100 A host system 101 (which may be distributed as discussedbelow) may be in communication with a device 102. The host system 101may further be in communication with nodes 110 a distributed network 199(and/or may be executing on those nodes). The host system 101 mayinitiate a random variable selection on the nodes (202). The nodes 110may exchange selected values 112 (e.g., sometimes in an encrypted formprior to a later reveal). Based on the multiple node exchange, the nodes110 may generate a random selection 114. For example, each of themultiple nodes may generate one or more selected values in one or moreexchange rounds. In some cases, the individual results of the rounds maybe recorded on the blockchain (either as a group, e.g., on a block orover multiple blocks fulfilling recordation request; or individuallyacross multiple different recordation requests which may be fulfilledover one or more blocks). The host system 101 may provide the randomselection 114 to the device 102 (204), which may capture video, selectdata, and/or obtain other data integrating the random selection inresponse (206). For example, to capture video integrating the randomselection, the device 102 may cause a perceptible representation of therandom selection which may be captured along with the content of thevideo for date verifiability. After capture or at intervals within thecapture, the device 102 may upload the captured video to the host system101 or to a distributed network. The host system 101 may cause the nodesof the distributed network to generate a record of the captured video onthe blockchain (208).

The above techniques provide a platform on which video evidence withprecise date verifiability can be created within a trustless system. Thedate verifiable may be used to credibility established the condition ofa property at a particular date. Further, the low cost trustlessself-inspection regime allows the collection of credible disputeresolution evidence prior to a specific dispute arising.

FIG. 3 shows an example mobile device 300 in communication with anetwork controller 350, such as an enhanced Node B (eNB) or other basestation. The network controller 350 and mobile device 300 establishcommunication channels such as the control channel 352 and the datachannel 354, and exchange data. In this example, the mobile device 300supports one or more Subscriber Identity Modules (SIMs), such as theSIM1 302 and the SIM2 304. Electrical and physical interfaces 306 and308 connect SIM1 302 and SIM2 304 to the rest of the user equipmenthardware, for example, through the system bus 310.

The example mobile device 300 includes communication interfaces 312,system logic 314, and a user interface 318. The system logic 314 mayinclude any combination of hardware, software, firmware, or other logic.The system logic 314 may be implemented, for example, with one or moresystems on a chip (SoC), application specific integrated circuits(ASIC), discrete analog and digital circuits, and other circuitry. Invarious implementations, the example mobile device 300 may performvarious tasks of the device 102.

In some implementations, various tasks of the host system 101, discussedabove, may be performed by the hardware of the mobile device 300. Forexample, the initiation of the multiple node exchange of selected valuesand causation of blockchain recordations may be performed by the mobiledevice 300. Although the device 102 and host system 101 may includevarious logically separable functions, the host system and device maynot necessarily be run on physically separate hardware.

The system logic 314 is part of the implementation of any desiredfunctionality in the mobile device 300. In that regard, the system logic314 may include logic that facilitates, as examples, decoding andplaying music and video, e.g., MP3, MP4, MPEG, AVI, FLAC, AC3, or WAVdecoding and playback; running applications; accepting user inputs;saving and retrieving application data; establishing, maintaining, andterminating cellular phone calls or data connections for, as oneexample, Internet connectivity; establishing, maintaining, andterminating wireless network connections, Bluetooth connections, orother connections; and displaying relevant information on the userinterface 318.

The user interface 318 and the input/output (I/O) interfaces 328 mayinclude a graphical user interface, touch sensitive display, voice orfacial recognition inputs, buttons, switches, speakers and other userinterface elements. Additional examples of the I/O interfaces 328include microphones, video and still image cameras, temperature sensors,vibration sensors, rotation and orientation sensors, headset andmicrophone input/output jacks, Universal Serial Bus (USB), SerialAdvanced Technology Attachment (SATA), and Peripheral ComponentInterconnect express (PCIe) interfaces and connectors, memory cardslots, radiation sensors (e.g., IR or RF sensors), and other types ofinputs. The I/O interfaces 328 may further include Universal Serial Bus(USB) interfaces, audio outputs, magnetic or optical media interfaces(e.g., a CDROM or DVD drive), network (e.g., Ethernet or cable (e.g.,DOCSIS) interfaces), or other types of serial, parallel, or network datainterfaces.

The system logic 314 may include one or more processors 316 and memories320. The memory 320 stores, for example, control instructions 322 thatthe processor 316 executes to carry out desired functionality for themobile device 300. The control parameters 324 provide and specifyconfiguration and operating options for the video capture application322. The memory 320 may also store any BT, WiFi, 3G, or other data 326that the mobile device 300 will send, or has received, through thecommunication interfaces 312. The mobile device 300 may include one ormore cameras which may include an lighting device (e.g., LED or flashbulb) that may serve as a camera flash. The system power of the mobiledevice 300 may be supplied by a battery 301 or other power source.

In the communication interfaces 312, RF transmit (Tx) and receive (Rx)circuitry 330 handles transmission and reception of signals through oneor more antennas 332. The RF Tx/Rx circuitry 330 may include basebandcircuitry 335 to control the processing of transmitted and receivedsignals. For example, the baseband circuitry may perform pre-distortioncalibrations and pre-distort input signals for transmission. Thecommunication interface 312 may include one or more transceivers. Thetransceivers may be wireless transceivers that includemodulation/demodulation circuitry, digital to analog converters (DACs),shaping tables, analog to digital converters (ADCs), filters, waveformshapers, filters, pre-amplifiers, power amplifiers and/or other logicfor transmitting and receiving through one or more antennas, or (forsome devices) through a physical (e.g., wireline) medium.

The transmitted and received signals may adhere to any of a diversearray of formats, protocols, modulations (e.g., QPSK, 16-QAM, 64-QAM, or256-QAM), frequency channels, bit rates, and encodings. As one specificexample, the communication interfaces 312 may include transceivers thatsupport transmission and reception under the 2G, 3G, BT, WiFi, UniversalMobile Telecommunications System (UMTS), High Speed Packet Access(HSPA)+, and 4G/Long Term Evolution (LTE/LTE-A) standards. Thetechniques described below, however, are applicable to other wirelesscommunications technologies whether arising from the 3rd GenerationPartnership Project (3GPP), GSM Association, 3GPP2, IEEE, or otherpartnerships or standards bodies.

In some implementations, the mobile device 300 may connect to anetwork-connected display device 398, which may include lights or otheroutputs for representation of the random value.

FIG. 4 shows an example execution environment 400 for the host systemdescribed above. The execution environment 400 may include processingcircuitry 414 to support coordination of the random value selection,video capture, and blockchain recordation described above. Theprocessing circuitry 414 may include processors 416, memory 420, and/orother circuitry. In various implementations, the execution environmentmay include a cloud, virtual machine, and/or serverless executionenvironment. In some cases, tasks of the may be performed distributedhost system one or more nodes on a distributed network. The nodes may becoordinated by code supplied or provided on behalf the entitycontrolling the host system, e.g., as a portion of a smart contract.However, other localized, server-based, or distributed computingenvironments may be used. The instructions stored on the processingcircuitry 414 (whether localized or distributed) transforms theprocessing circuitry 414 into a specifically configured machine inaccord with some or all of the architectures and techniques discussed inthis disclosure. In some distributed cases, the specific portion of thedistributed hardware that may be executing the serverless tasks maychange as execution progresses.

The memory 420 may include value selection parameters 452, capturecoordination controls (CCC) 454, and operational rules 456. The memory420 may further include applications and structures 466, for example,coded objects, machine instructions, templates, or other structures tosupport coordination of the random value selection, video capture, andblockchain recordation, or other tasks described above. The memory 420may also include instructions to support the dating logic 200 discussedabove.

The execution environment 400 may also include communication interfaces412, which may support wireless, e.g. Bluetooth, Wi-Fi, WLAN, cellular(4G, LTE/LTE-A), and/or wired, Ethernet, Gigabit Ethernet, opticalnetworking protocols. The communication interfaces 412 may also includeserial interfaces, such as universal serial bus (USB), serial ATA, IEEE1394, lighting port, I²C, slimBus, or other serial interfaces. Thecommunication interfaces 412 may be used to support and/or implementremote operation of the host system. The execution environment 400 mayinclude power functions 434 and various input interfaces 428. Theexecution environment may also include a user interface 418 that mayinclude human-to-machine interface devices and/or graphical userinterfaces (GUI). The user interface 418 may be used to support and/orimplement local operation of the host system. As discussed above, invarious implementations, the processing circuitry 414 may be distributedover one or more physical servers, be implemented as one or more virtualmachines, be implemented in container environments such as Cloud Foundryor Docker, and/or be implemented in serverless (functions as-a-service)environments.

In some cases, the execution environment 400 may be a specially-definedcomputational system deployed in a cloud platform. In some cases, theparameters defining the execution environment may be specified in amanifest for cloud deployment. The manifest may be used by an operatorto requisition cloud based hardware resources, and then deploy thesoftware components, for example, the host system, of the executionenvironment onto the hardware resources. In some cases, a manifest maybe stored as a preference file such as a YAML (yet another mark-uplanguage), JSON, or other preference file type.

The methods, devices, processing, circuitry, and logic described abovemay be implemented in many different ways and in many differentcombinations of hardware and software. For example, all or parts of theimplementations may be circuitry that includes an instruction processor,such as a Central Processing Unit (CPU), microcontroller, or amicroprocessor; or as an Application Specific Integrated Circuit (ASIC),Programmable Logic Device (PLD), or Field Programmable Gate Array(FPGA); or as circuitry that includes discrete logic or other circuitcomponents, including analog circuit components, digital circuitcomponents or both; or any combination thereof. The circuitry mayinclude discrete interconnected hardware components or may be combinedon a single integrated circuit die, distributed among multipleintegrated circuit dies, or implemented in a Multiple Chip Module (MCM)of multiple integrated circuit dies in a common package, as examples.

Accordingly, the circuitry may store or access instructions forexecution, or may implement its functionality in hardware alone. Theinstructions may be stored in a tangible storage medium that is otherthan a transitory signal, such as a flash memory, a Random Access Memory(RAM), a Read Only Memory (ROM), an Erasable Programmable Read OnlyMemory (EPROM); or on a magnetic or optical disc, such as a Compact DiscRead Only Memory (CDROM), Hard Disk Drive (HDD), or other magnetic oroptical disk; or in or on another machine-readable medium. A product,such as a computer program product, may include a storage medium andinstructions stored in or on the medium, and the instructions whenexecuted by the circuitry in a device may cause the device to implementany of the processing described above or illustrated in the drawings.

The implementations may be distributed. For instance, the circuitry mayinclude multiple distinct system components, such as multiple processorsand memories, and may span multiple distributed processing systems.Parameters, databases, and other data structures may be separatelystored and managed, may be incorporated into a single memory ordatabase, may be logically and physically organized in many differentways, and may be implemented in many different ways. Exampleimplementations include linked lists, program variables, hash tables,arrays, records (e.g., database records), objects, and implicit storagemechanisms. Instructions may form parts (e.g., subroutines or other codesections) of a single program, may form multiple separate programs, maybe distributed across multiple memories and processors, and may beimplemented in many different ways. Example implementations includestand-alone programs, and as part of a library, such as a shared librarylike a Dynamic Link Library (DLL). The library, for example, may containshared data and one or more shared programs that include instructionsthat perform any of the processing described above or illustrated in thedrawings, when executed by the circuitry.

Various implementations may use the techniques and architecturesdescribed above.

Table 2 shows various examples that may use the techniques andarchitectures described above.

TABLE 2 Examples 1. In an example, a method includes: initiating amultiple node exchange of selected values, the multiple node exchangeincluding combining the selected values to generate a random selection;causing a request to generate a first record of the exchange and therandom selection on a blockchain; causing provision of the randomselection to a device for capture of a video, the device configured to,during capture, cause representation of the random selection within thevideo; and causing a request to generate a second record of the video onthe blockchain. 2. The method of example 1, where the first recordcomprises multiple parts generated in multiple selection rounds, where asecond one of the multiple parts references a first one of the multipleparts. 3. The method of example 2, where the second one of the multipleparts is recorded on a selected block of the blockchain that is appendedto the blockchain after a specific block that contains a record of thefirst one of the multiple parts. 4. The method of any of examples 1-3,where causing representation of the random selection comprises causingoperation of a light on the device. 5. The method of any of examples1-4, where causing representation of the random selection includescausing a display of words representing the random selection. 6. Themethod of any of examples 1-5, where causing representation of therandom selection includes causing a network-connected device to produceaudio and/or visual signals. 7. In an example, a method includes:initiating a multiple node exchange of selected values; combining theselected values to generate a random selection; recording a first recordof the exchange and the random selection on a first blockchain;providing the random selection to a device for capture of a video;during capture, causing representation of the random selection withinthe video; receiving the video from the device; and recording a secondrecord of the video on a second blockchain. 8. The method of example 7,where the first and second blockchain comprise the same blockchain. 9.The method of either example 7 or 8, where recording the first record ofthe exchange comprises recording the first record in multiple parts,where a second one of the multiple parts refers to a first one of themultiple parts. 10. The method of any of examples 7-9, where causingrepresentation of the random selection comprises causing operation of alight on the device. 11. The method of any of examples 7-10, wherecausing representation of the random selection includes causing adisplay of words representing the random selection. 12. The method ofany of examples 7-11, where causing representation of the randomselection includes causing a network-connected device to produce audioand/or visual signals. 13. In an example, a product includes: machinereadable media other than a transitory signal; and instructions storedon the media, the instructions configured to, when executed, cause amachine to: initiate a multiple node exchange of selected values, themultiple node exchange including combining the selected values togenerate a random selection; cause a request to generate a first recordof the exchange and the random selection on a blockchain; causeprovision of the random selection to a device for capture of a video,the device configured to, during capture, cause representation of therandom selection within the video; and cause a request to generate asecond record of the video on the blockchain. 14. The product of example13, where the first record comprises multiple parts generated inmultiple selection rounds, where a second one of the multiple partsreferences a first one of the multiple parts. 15. The product of example14, where the second one of the multiple parts is recorded on a selectedblock of the blockchain that is appended to the blockchain after aspecific block that contains a record of the first one of the multipleparts. 16. The product of any of examples 13-15, where the instructionsare configured to cause the machine to cause representation of therandom selection by causing operation of a light on the device. 17. Theproduct of any of examples 13-16, where causing representation of therandom selection includes causing a display of words representing therandom selection. 18. The product of any of examples 13-17, wherecausing representation of the random selection includes causing anetwork-connected device to produce audio and/or visual signals. 19. Inan example, a method includes: using a mobile device: obtaining a randomselection, the random selection recorded on a blockchain; capturing avideo; and sending the video to a host node for recordation to theblockchain; and during capture of the video, causing generation ofperceptible outputs for capture within the video, the perceptiblesignals configured to represent the random selection. 20. In an example,a method includes: initiating a multiple node exchange of selectedvalues, the multiple node exchange including combining the selectedvalues to generate a random selection; causing a request to generate afirst record of the exchange and the random selection on a blockchain;obtaining data created in accord with the random selection, selected inaccord with the random selection, or both; and causing a request togenerate a second record based at least in part on the data on theblockchain. 21. In an example, a method includes: initiating a multiplenode exchange of selected values; combining the selected values togenerate a random selection; recording a first record of the exchangeand the random selection on a first blockchain; providing the randomselection to a device for capture of a video; during capture, causingrepresentation of the random selection within the video; receiving thevideo from the device; and recording a second record of the video on asecond blockchain. 22. The method of example 1, where the first andsecond blockchain comprise the same blockchain. 23. The method of eitherof examples 1 or 2, where recording the first record of the exchangecomprises recording the first record in multiple parts, where a secondone of the multiple parts refers to a first one of the multiple parts.24. The method of example 3, where the second one of the multiple partsis recorded on a block of the first blockchain that is appended to theblockchain after the block that records the first one of the multipleparts. 25. The method of any of examples 1-4, where causingrepresentation of the random selection comprises causing operation of alight on the device. 26. The method of any of examples 1-5, wherecausing representation of the random selection includes causing adisplay of words representing the random selection. 27. The method ofany of examples 1-6, where causing representation of the randomselection includes causing a network-connected device to produce audioand/or visual signals. 28. In an example, a method includes integratinga date verifiable random value selection into a video during capture.29. The product of any of examples 13-17, where multiple node exchangeincludes an operation compelling a first node of multiple exchangingnodes to commit to a corresponding selected value prior to a second nodeof the multiple exchanging nodes revealing a respective selected valuefor the second node. 30. In an example, a method performed by executingthe instructions of any of examples 13-18 and 29. 31. In an example, asystem includes circuitry configured to perform any of the methods ofexamples 1-12, 19-28, and 30. 32. In an example, a product includes: amachine readable medium other than a transitory signal; and instructionsstored on the medium that when executed cause a system to perform any ofthe methods of examples 1-12 and 19-28. 33. In an example, a system isconfigured to implement any of or any combination of the featuresdescribed in the preceding specification and examples. 34. In anexample, a method includes implementing any of or any combination of thefeatures described in the preceding specification and examples.

Various implementations have been specifically described. However, manyother implementations are also possible.

What is claimed is:
 1. A method including: initiating a multiple nodeexchange of selected values, the multiple node exchange includingcombining the selected values to generate a random selection; causing arequest to generate a first record of the exchange and the randomselection on a blockchain; causing provision of the random selection toa device for capture of a video, the device configured to, duringcapture, cause representation of the random selection within the video;and causing a request to generate a second record of the video on theblockchain.
 2. The method of claim 1, where the first record comprisesmultiple parts generated in multiple selection rounds, where a secondone of the multiple parts references a first one of the multiple parts.3. The method of claim 2, where the second one of the multiple parts isrecorded on a selected block of the blockchain that is appended to theblockchain after a specific block that contains a record of the firstone of the multiple parts.
 4. The method of claim 1, where causingrepresentation of the random selection comprises causing operation of alight on the device.
 5. The method of claim 1, where causingrepresentation of the random selection includes causing a display ofwords representing the random selection.
 6. The method of claim 1, wherecausing representation of the random selection includes causing anetwork-connected device to produce audio and/or visual signals.
 7. Amethod including: initiating a multiple node exchange of selectedvalues; combining the selected values to generate a random selection;recording a first record of the exchange and the random selection on afirst blockchain; providing the random selection to a device for captureof a video; during capture, causing representation of the randomselection within the video; receiving the video from the device; andrecording a second record of the video on a second blockchain.
 8. Themethod of claim 7, where the first and second blockchain comprise thesame blockchain.
 9. The method of claim 7, where recording the firstrecord of the exchange comprises recording the first record in multipleparts, where a second one of the multiple parts refers to a first one ofthe multiple parts.
 10. The method of claim 7, where causingrepresentation of the random selection comprises causing operation of alight on the device.
 11. The method of claim 7, where causingrepresentation of the random selection includes causing a display ofwords representing the random selection.
 12. The method of claim 7,where causing representation of the random selection includes causing anetwork-connected device to produce audio and/or visual signals.
 13. Aproduct comprising: machine readable media other than a transitorysignal; and instructions stored on the media, the instructionsconfigured to, when executed, cause a machine to: initiate a multiplenode exchange of selected values, the multiple node exchange includingcombining the selected values to generate a random selection; cause arequest to generate a first record of the exchange and the randomselection on a blockchain; cause provision of the random selection to adevice for capture of a video, the device configured to, during capture,cause representation of the random selection within the video; and causea request to generate a second record of the video on the blockchain.14. The product of claim 13, where the first record comprises multipleparts generated in multiple selection rounds, where a second one of themultiple parts references a first one of the multiple parts.
 15. Theproduct of claim 14, where the second one of the multiple parts isrecorded on a selected block of the blockchain that is appended to theblockchain after a specific block that contains a record of the firstone of the multiple parts.
 16. The product of claim 13, where theinstructions are configured to cause the machine to cause representationof the random selection by causing operation of a light on the device.17. The product of claim 13, where causing representation of the randomselection includes causing a display of words representing the randomselection.
 18. The product of claim 13, where causing representation ofthe random selection includes causing a network-connected device toproduce audio and/or visual signals.
 19. The product of claim 13, wheremultiple node exchange includes an operation compelling a first node ofmultiple exchanging nodes to commit to a corresponding selected valueprior to a second node of the multiple exchanging nodes revealing arespective selected value for the second node.